package com.tecso.btx.admin.dao.impl;

import java.util.HashMap;
import java.util.List;
import java.util.Map;

import com.tecso.btx.admin.dao.IRecursoDao;
import com.tecso.btx.admin.modelo.Recurso;

public class RecursoDao extends GenericDaoJpaImpl<Recurso, Integer> implements IRecursoDao{

	private static String sql = "";
	private static String separator = ",";
	
	@SuppressWarnings("unchecked")
	@Override
	public Map<Integer, Recurso> getRecursos(List<Integer> id_recursos) {
		
		StringBuffer list_ids = new StringBuffer();
		
		list_ids.append("(");
		
		for(int i=0; i < id_recursos.size();i++){
			
			if (i==id_recursos.size()-1)
				list_ids.append(id_recursos.get(i));
			else
				list_ids.append(id_recursos.get(i) + separator);
		}
				
		list_ids.append(")"); 
		
		sql = "SELECT t FROM Recurso t WHERE t.id_recurso in " + list_ids;
		
		
		List<Recurso> recursos_resultado = getEntityManager().createQuery(sql).getResultList();
		
		Map<Integer, Recurso> result = new HashMap<Integer, Recurso>();
		
		for (Recurso rec : recursos_resultado) {
			result.put(rec.getId_recurso(), rec);
		} 
				
		
		return result;
	}

}
